package com.run2code.design.behavioral.state;

/**
 * 未登录状态实现
 * 关注公众号【奔跑的码畜】，一起进步不迷路
 *
 * @author 第七人格
 * @date 2024/06/12
 */
public class LoggedOutState implements UserState {
    private UserContent userContent;

    public LoggedOutState(UserContent userContent) {
        this.userContent = userContent;
    }

    @Override
    public void showContent() {
        System.out.println("用户未登录，显示登录页面或公共内容...");
    }

    @Override
    public void login() {
        userContent.setState(new LoggedInState(userContent));
        // 登录后展示登录内容
        userContent.showContent();
    }

    @Override
    public void logout() {
        System.out.println("用户未登录，无需登出。");
    }
}